4 '*************** SIMPLIFIED BUSINESS BOOKKEEPING *****************************
5 '************** COPYRIGHT 1985 DONALD I. PARITZ *****************************
6 CLS:FOR N=1 TO 10:PRINT:NEXT:PRINT STRING$(79,42):PRINT:PRINT TAB(25)"SIMPLIFIED BUSINESS BOOKKEEPING":PRINT:PRINT TAB(24) "COPYRIGHT 1985 DONALD I. PARITZ":PRINT STRING$(79,42)
7 WHILE N<1000 AND X$="":X$=INKEY$:N=N+1:WEND
10 '
20 COLOR 7,0:CLS:CLEAR:KEY 7, "":KEY 8, "@":ON ERROR GOTO 300
50 PRINT:PRINT: COLOR 0,7:PRINT" BOOKKEEPING FILE DISK MUST BE IN DRIVE B ":COLOR 7,0:PRINT:DEFDBL A-Z:DEFINT N,I,J:PRINT "CHOOSE PROGRAM":PRINT:PRINT TAB(10) "E=EXPENSES":PRINT:PRINT TAB(10) "I=INCOME"
120 PRINT:PRINT TAB(10) "B=BANK-CHECKING ACCOUNT --- DO FIRST IF INITIATING SYSTEM":PRINT:PRINT TAB(10) "A=ACCOUNTS RECEIVABLE":PRINT:PRINT TAB(10) "F=SUMMARY OF OPERATIONS (CLOSE OUT INCOME AND EXPENSE FILES FIRST)"
140 PRINT:PRINT TAB(10) "C=CLOSE FILES AND END - BOOKKEEPING FILE DISK MUST BE IN DRIVE B
160 PRINT:PRINT " P=PREPARE NEW BOOKKEEPING FILE DISKS (PAYROLL DISKS MUST BE PREPARED FROM PAYROLL PROGRAM)
170 PRINT:PRINT " S=INITIALIZE SYSTEM - PREPARES NEW BOOKKEEPING, PAYROLL AND ACCOUNT RECEIVABLE FILE DISKS FOR FIRST TIME SYSTEM IS USED"
180 X$=INKEY$:DEF SEG=64:POKE 23, (PEEK(23) OR 64)
200 IF X$="E" THEN RUN "EXPENSE" ELSE IF X$="I" THEN RUN "INCOME" ELSE IF X$="B" THEN RUN "CHECKING" ELSE IF X$="A" THEN RUN "ACCTREC" ELSE IF X$="F" THEN 5000 ELSE IF X$="C" THEN 30000 ELSE IF X$="P" OR X$="S" THEN 240 ELSE 180
240 CLS:PRINT:PRINT TAB(10) "REMOVE DISK FROM DRIVE B":IF X$="P" THEN PRINT:PRINT TAB(10) "ENTER F WHEN A> APPEARS"
260 IF X$="S" THEN PRINT:PRINT TAB(10) "ENTER S WHEN A> APPEARS"
270 PRINT:PRINT:SYSTEM
300 COLOR 0,7:IF ERR=201 THEN PRINT "WRONG DISK IS IN DRIVE A, CATEGORY OF EXPENSE FILE CANNOT BE FOUND.":GOTO 400
320 IF ERR=202 THEN PRINT "EXPENSE FILE HAS NOT BEEN CLOSED OUT FOR THIS MONTH OR WRONG DISK IS IN DRIVE B":GOTO 400
330 IF ERR=203 THEN PRINT "INCOME FILE HAS NOT BEEN CLOSED OUT FOR THIS MONTH OR WRONG DISK IS IN DRIVE B":GOTO 400
340 IF ERR=204 THEN PRINT "EXPENSE TOTALS FILE CANNOT BE FOUND.":PRINT:PRINT "WRONG DISK IN DRIVE B .":GOTO 400
350 IF ERR=205 THEN PRINT "INCOME TOTALS FILE CANNOT BE FOUND.":PRINT:PRINT "WRONG DISK IN DRIVE B .":GOTO 400
360 IF ERR=71 THEN PRINT "DISK NOT IN DRIVE A OR DRIVE DOOR IS OPEN.":GOTO 400
370 IF ERR=24 OR ERR=27 THEN PRINT "PRINTER NOT ON OR OUT OF PAPER.":PRINT:PRINT "SET TOP OF PAGE AND TURN ON PRINTER.":GOTO 400
380 PRINT "AN UNDEFINED ERROR HAS OCCURRED":GOTO 400
410 X$=INKEY$:IF X$="@" THEN COLOR 7,0:CLS:RESUME ELSE IF X$=CHR$(27) THEN 20 ELSE 410
430 '
5000 CLS:PRINT:PRINT TAB(10) "BOOKKEEPING FILE DISK WITH MOST RECENT CLOSED OUT INCOME AND EXPENSE FILES MUST BE IN DRIVE B .":PRINT:PRINT "READY PRINTER.":PRINT:PRINT:DEFDBL A-Z:DEFINT N,I,J:DL$="$$#########.##":INPUT "LAST MONTH CLOSED OUT ";MON$
5070 EXFL$="B:EXPENSE."+LEFT$(MON$,3):INFL$="B:INCOME."+LEFT$(MON$,3):OPEN "CATEGORY.FIL" AS 1:IF LOF(1)/128=0 THEN ERROR 201
5090 FIELD 1, 44 AS L$:FOR N= 1 TO LOF(1)/128:GET 1,N:IF LEFT$(L$,8)="PURCHASE" THEN IPUR=N
5130 NEXT:CLOSE 1:OPEN EXFL$ AS 1:IF LOF(1)/128=0 THEN ERROR 202
5160 FIELD 1, 8 AS D$, 8 AS C$, 25 AS B$, 9 AS A$, 18 AS E$:FOR N=2 TO LOF(1)/128:GET 1,N:IF LEFT$(E$,1)="*" THEN 5220
5200 TEXP=TEXP+CVD(A$):IF LEFT$(E$,8)="PURCHASE" THEN TPUR=TPUR+CVD(A$)
5220 NEXT:CLOSE 1:OPEN INFL$ AS 1:IF LOF(1)/128=0 THEN ERROR 203
5250 FOR N=2 TO LOF(1)/128:FIELD 1, 8 AS D$, 10 AS B$, 10 AS A$, 15 AS F$, 30 AS S$, 5 AS X$:GET 1,N:TDEP=TDEP+CVD(B$):IF LEFT$(X$,1)="M" THEN TMISC=TMISC+CVD(A$):GOTO 5320
5300 FIELD 1, 8 AS D$, 10 AS B$, 10 AS A$, 8 AS E$, 8 AS N$, 8 AS T$, 8 AS R$, 8 AS G$, 8 AS X$:TINC=TINC+CVD(N$)+CVD(T$)+CVD(R$)+CVD(X$)
5320 NEXT:DAT$=D$:CLOSE 1:OPEN "B:EXPENSE.TOT" AS 1:IF LOF(1)/128=0 THEN ERROR 204
5360 FIELD 1, 12 AS Q$:GET 1, IPUR:TTPUR=CVD(Q$):GET 1,LOF(1)/128:TTEXP=CVD(Q$):CLOSE 1:OPEN "B:INCOME.TOT" AS 1:IF LOF(1)/128=0 THEN ERROR 205
5430 FIELD 1, 12 AS Q$:GET 1, 12:TTSAL=CVD(Q$):FOR N=9 TO 11:GET 1,N:TTMISC=TTMISC+CVD(Q$):NEXT:GET 1,1:TTDEP=CVD(Q$):CLS:PRINT:PRINT TAB(10) "SUMMARY OF OPERATIONS ENDING "+DAT$+" YTD"
5530 PRINT:PRINT "SALES ";:PRINT USING DL$;TINC;TTSAL:LPRINT CHR$(27)CHR$(69)+CHR$(27)CHR$(71):LPRINT:LPRINT TAB(10) "SUMMARY OF OPERATIONS ENDING "+DAT$+" YTD"
5570 LPRINT CHR$(27)CHR$(70)+CHR$(27)CHR$(72):LPRINT "SALES ";:LPRINT USING DL$;TINC;TTSAL:PRINT "COST OF MERCHANDISE SOLD ";:PRINT USING DL$;TPUR;TTPUR
5610 LPRINT "COST OF MERCHANDISE SOLD ";:LPRINT USING DL$;TPUR;TTPUR:PRINT TAB(40) STRING$(39,45):LPRINT TAB(40) STRING$(39,45):PRINT " GROSS PROFIT ON SALES ";:PRINT USING DL$;TINC-TPUR;TTSAL-TTPUR
5670 LPRINT " GROSS PROFIT ON SALES ";:LPRINT USING DL$;TINC-TPUR;TTSAL-TTPUR:PRINT:PRINT "EXPENSES ";:PRINT USING DL$;TEXP-TPUR;TTEXP-TTPUR:LPRINT:LPRINT "EXPENSES ";
5720 LPRINT USING DL$;TEXP-TPUR;TTEXP-TTPUR:PRINT TAB(40) STRING$(39,45):LPRINT TAB(40) STRING$(39,45):PRINT " NET INCOME FROM SALES ";:PRINT USING DL$;TINC-TEXP;TTSAL-TTEXP:LPRINT " NET INCOME FROM SALES ";
5780 LPRINT USING DL$;TINC-TEXP;TTSAL-TTEXP:PRINT:PRINT "OTHER INCOME ";:PRINT USING DL$;TMISC;TTMISC:LPRINT:LPRINT "OTHER INCOME ";:LPRINT USING DL$;TMISC;TTMISC:PRINT TAB(40) STRING$(39,45)
5840 PRINT " TOTAL NET ";:PRINT USING DL$;TINC+TMISC-TEXP;TTSAL+TTMISC-TTEXP:LPRINT TAB(40) STRING$(39,45):LPRINT " TOTAL NET ";:LPRINT USING DL$;TINC+TMISC-TEXP;TTSAL+TTMISC-TTEXP
5930 LPRINT CHR$(27)CHR$(70)+CHR$(27)CHR$(72):LPRINT "DEPOSITS ";:LPRINT USING DL$;TDEP;TTDEP:PRINT "PAID OUT ";:PRINT USING DL$;TEXP;TTEXP:PRINT TAB(40) STRING$(39,45)
5980 PRINT " NET CASH ";:PRINT USING DL$;TDEP-TEXP;TTDEP-TTEXP:LPRINT "PAID OUT ";:LPRINT USING DL$;TEXP;TTEXP:LPRINT TAB(40) STRING$(39,45)
6030 LPRINT " NET CASH ";:LPRINT USING DL$;TDEP-TEXP;TTDEP-TTEXP:LPRINT CHR$(12):PRINT:PRINT TAB(10) "PRESS F8 TO RETURN TO MENU"
6070 X$=INKEY$:IF X$<>"@" THEN 6070 ELSE 20
30000 OPEN "B:BACKUP.FIL" AS 4:IF LOF(4)/128=0 THEN 30020 ELSE GOSUB 30070
30020 CLS:PRINT:PRINT TAB(10) "ENTER A FOR FILE BACKUP MENU":SYSTEM
30070 OPEN "B:B.BAT" FOR OUTPUT AS 3:FOR N=1 TO LOF(4)/128:FIELD 4, 14 AS A$:GET 4,N:IF LEFT$(A$,6)="CHKDSC" THEN CHKDSC=1:GOTO 30150
30155 PRINT #3, "REM REMOVE BOTH DISKS":PRINT #3, "REM INSERT PROGRAM DISK IN DRIVE A":PRINT #3, "REM ENTER A WHEN READY":CLOSE 3:CLOSE 4:KILL "B:BACKUP.FIL":RETURN